System and method for assembly inspection

ABSTRACT

A method for assembly inspection is disclosed. The system may include obtaining a digital image of an assembled product, extracting images of one or more objects from the digital image of the assembled product, and recognizing each of the one or more objects as a component based on its extracted image and a library of standard components. The method may further include identifying one or more features of each recognized component, comparing each of the one or more identified features with a corresponding standard feature of the corresponding standard component, and determining an assembly fault if at least one of the one or more identified features does not match the corresponding standard feature.

TECHNICAL FIELD

The present disclosure relates generally to a system and method forinspection, and relates more particularly to a system and method forassembly inspection.

BACKGROUND

Production of industrial engines and off-highway equipment usuallyinvolves the assembly of multiple flexible systems, such as hydraulichoses and wiring harnesses. Assembly faults may cause malfunctions orinefficiencies of the product. Assembly faults may include, for example,missing fasteners and hoses, misrouting of hoses or wires, rubbing ofhoses, wires or belts, wrong dimension of hoses or belts, etc. In orderto ensure that the systems and parts are correctly assembled, inspectionof the product during the assembly process is needed. Assemblyinspections are conventionally performed manually by experiencedinspectors. During the manual inspection, inspectors usually compare theassembled product with a design chart and detect an assembly fault whenthere is a difference between the two.

However, manual inspection may be inaccurate and may lead touncertainties of the defect inspection process. The assembled productsmay visually vary among each other, and directly matching them withtheir design charts may lead to mistakes during the visual inspectionprocess. For example, flexible assemblies such as hydraulic hoses may bepresent in a different orientation or shape as those in the designchart. In addition, manual inspection requires skilled, human labor andcan be time-consuming. Therefore, it is desirable to automate theinspection process of machine assemblies.

Several automated inspection systems have been developed that utilizedigital image processing techniques to perform assembly inspections. Anexample of such an automated inspection system is disclosed in U.S.Patent Publication No. 2005/0147287 to Sakai et al. (“the '287publication”). In particular, the '287 publication discloses a patterndefect inspection method and apparatus that reveal defects on aninspection target. The pattern defect inspection apparatus comparesimages of corresponding areas of two formed patterns that should beidentical with each other, and identifies a defect if any mismatchesoccur between the images. In particular, the image comparison processmay be performed on a plurality of areas simultaneously. Further, thepattern defect inspection apparatus also converts the gradation of theimage signals of compared images in each of a plurality of differentprocesses, so that images with the same patterns but differentbrightness may be properly compared.

Although the method and apparatus of the '287 publication may alleviatesome of the problems of manual assembly inspections, it may still beproblematic. First, the process may still be inaccurate. A product mayinclude a plurality of assemblies. While it is important that eachassembly is correctly assembled, the relative position of the pluralityof assemblies may vary from one product to another. The inspectionapparatus disclosed by the '287 publication uses the overall pattern ofthe image, instead of image regions of individual components, and relieson the global matching between images. Therefore, a defect may beincorrectly detected because a relative position between a flexibleassembly and other components may be different from that dictated in adesign chart. For example, the wirings of the circuit disclosed by the'287 publication may be correct, but the relative location ororientation of the flexible wires may be distinctive from the pattern inthe design chart. Such a circuit may be incorrectly determined as faultyby the '287 publication. In addition, because objects in the image arenot extracted and identified, the '287 publication may not facilitateidentification of specific component assembly faults and provide aninformative diagnosis report, besides detecting the existence of such afault.

The system and method of the present disclosure is directed towardsovercoming one or more of the constraints set forth above.

SUMMARY

In one aspect, the present disclosure is directed to a method forassembly inspection. The system may include obtaining a digital image ofan assembled product, extracting images of one or more objects from thedigital image of the assembled product, and recognizing each of the oneor more objects as a component based on its extracted image and alibrary of standard components. The method may further includeidentifying one or more features of each recognized component, comparingeach of the one or more identified features with a correspondingstandard feature of the corresponding standard component, anddetermining an assembly fault if at least one of the one or moreidentified features does not match the corresponding standard feature.

In another aspect, the present disclosure is directed to a system forassembly inspection. The system may include an imaging device configuredto obtain a digital image of an assembled product, and a storage deviceconfigured to store an assembly inspection tool, a library of standardcomponents and one or more standard features of each standard component.The system may further include a processor configured to execute theassembly inspection tool to extract images of one or more objects fromthe digital image of the assembled product, and recognize each of theone or more objects as a component based on its extracted image and alibrary of standard components. The processor may be further configuredto execute the assembly inspection tool to identify one or more featuresof each recognized component, compare each of the one or more identifiedfeatures with the corresponding standard feature of the correspondingstandard component, and determine an assembly fault if at least one ofthe one or more identified features does not match the correspondingstandard feature. The processor may also be further configured toexecute the assembly inspection tool to diagnose the assembly fault, anddetermine a type and a location of the assembly fault.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of an assembly inspection system accordingto an exemplary embodiment of the present disclosure;

FIG. 2 is a schematic diagram of an assembly inspection tool, consistentwith the disclosed embodiment shown in FIG. 1;

FIG. 3 is a flow chart of an exemplary operation process of the assemblyinspection system, consistent with the disclosed embodiment shown inFIG. 1;

FIG. 4 is a flow chart of an exemplary operation process of an objectextraction module, consistent with Step 33 shown in FIG. 3; and

FIG. 5 is a flow chart of an exemplary operation process of an objectrecognition module, consistent with Step 34 shown in FIG. 3.

DETAILED DESCRIPTION

FIG. 1 is a schematic diagram of an assembly inspection system 10according to an exemplary embodiment of the present disclosure. Anassembly inspection system 10 may include an imaging device 110, anassembly inspection console 120, and a transmission device 130connecting imaging device 110 and assembly inspection console 120.Assembly inspection system 10 may be configured to inspect an assembledproduct 101 and detect an assembly fault in an automated manner. Forexample, assembled product 101 may be an engine, in which a plurality offlexible systems, such as hydraulic hoses and wiring harnesses, may beinstalled. However, one skilled in the art will know that assembledproduct 101 may be any other equipment that includes a plurality of anyother types of suitable assemblies.

Imaging device 110 may include, among other things, an optical emitter111, an optical detector 112, and a converter 113. For example, imagingdevice 110 may be a digital camera. Optical emitter 111 may include oneor more optical emitting devices, for example, light emitting diodes(LEDs), configured to apply a first optical signal for illuminatingassembled product 101. Consistent with one disclosed embodiment, opticalemitter 111 may be configured to operate only when the ambient lightaround assembled product 101 is not sufficient, similar to a flash of adigital camera. Optical detector 112 may include one or more opticalreceiving devices, for example, photodiodes or charge-coupled devices(CCDs), configured to receive a second optical signal containing thestructure information of assembled product 101. According to onedisclosed embodiment, optical emitter 111 and optical detector 112 maybe positioned at the same side of assembled product 101, and the secondoptical signal may be associated with a reflection signal of the firstoptical signal that is reflected by assembled product 101. According toanother disclosed embodiment, optical emitter 111 and optical detector112 may be positioned at the opposite sides of assembled product 101,and the second optical signal may be associated with a residual of thefirst optical signal that is attenuated by assembled product 101.Imaging device 110 may further include a converter 113 configured toconvert the received optical signal to a digital image, wherein eachpixel value of the digital image is proportional to a signal intensityreceived at each pixel.

The digital image obtained by imaging device 110 may be transmitted toassembly inspection console 120 via transmission device 130. Accordingto one disclosed embodiment, assembly inspection console 120 may belocated close to imaging device 110, and transmission device 130 may bea physical transmission device, such as a cable. According to anotherdisclosed embodiment, assembly inspection 120 may be located a distanceaway from imaging device 110, and transmission device 130 may be awireless transmission device, such as a wireless network.

According to one disclosed embodiment, imaging device 110 may furtherinclude a data compressor (not shown) to compress the digital image, sothat the image transmission cost and/or image transmission time may bereduced. For example, a compressed digital image may require lessbandwidth from transmission device 130. Accordingly, a compressed imagemay be more efficiently transmitted via transmission device 130.

Assembly inspection console 120 may include one or more computerassemblies configured to detect an assembly fault associated withassembled product 101, based on digital images received from imagingdevice 110. Assembly inspection console 120 may be associated with oneor more software applications, including, for example, an assemblyinspection tool 200. Assembly inspection tool 200 may run on assemblyinspection console 120, and may be accessed by an authorized user. Theassembly inspection tool 200 may be stored on a computer readablemedium, such as a hard drive, computer disk, CD-ROM, or any othersuitable medium.

Assembly inspection console 120 may include a processor 121, a randomaccess memory (“RAM”) 122, a read-only memory (“ROM”) 123, a storagedevice 124, a database 125, a display device 126, and an input interface127. It is contemplated that assembly inspection console 120 may includeadditional, fewer, and/or different components than those listed above.It is understood that the type and number of listed devices areexemplary only and not intended to be limiting.

Processor 121 may be a central processing unit (“CPU”). Processor 121may execute sequences of computer program instructions to performvarious processes that will be explained in greater detail below. Thecomputer program instructions may be accessed and read from ROM 123, orany other suitable memory location, and loaded into RAM 122 forexecution by processor 121. Depending on the type of assembly inspectionconsole 120 being used, processor 121 may include one or more printedcircuit boards, and/or a microprocessor chip. Processor 121 may furtherinclude a data de-compressor (not shown) configured to de-compress thedigital image that is compressed at imaging device 110.

Storage device 124 may include any type of mass storage suitable forstoring information. For example, storage device 124 may include one ormore hard disk devices, optical disk devices, or any other storagedevices that provide data storage space. In one embodiment of thepresent disclosure, database 125 may store data related to the assemblyinspection process, such as a computer aided design (CAD) chart of anassembled product 101, standard components converted from the CAD designchart, and standard features of each standard component. Database 125may also include analysis and organization tools for analyzing andorganizing the information contained therein.

Assembly inspection console 120 may be accessed and controlled by auser, using input interface 270. Assembly inspection console 120 mayalso provide visualized information to the user via display device 126.For example, display device 126 may include a computer screen (notshown) and provide a graphical user interface (“GUI”) to the user.Display device 126 may also display an inspection report to the userindicating a type and a location of an assembly fault. Input interface127 may be provided for the user to input information into assemblyinspection console 120, and may include, for example, a keyboard, amouse, and/or optical or wireless computer input devices (not shown).The user may input control instructions via input interface 127 andcontrol the operation of imaging device 110. The user may also inputparameters to adjust the operation of assembly inspection console 120.

Assembly inspection console 120 may be configured to execute assemblyinspection tool 200. Assembly inspection tool 200 may include one ormore modules. FIG. 2 is a schematic diagram of an assembly inspectiontool, consistent with the disclosed embodiment shown in FIG. 1. As shownin FIG. 2, assembly inspection tool 200 may include a CAD conversionmodule 210, an object extraction module 220, an object recognitionmodule 230, and a fault detection module 240. CAD conversion module 210may receive a CAD design chart of an assembled product 101 from database215. CAD conversion module 210 may be configured to convert the designchart to a library of standard components. CAD conversion module 210 maybe further configured to identify one or more standard features of eachstandard component. The library of standard components and theircorresponding standard features may be output by CAD conversion module210 and be stored in database 215.

Object extraction module 220 may receive the digital image of assembledproduct 101, obtained by imaging device 110, as an input. Objectextraction module 220 may be configured to extract images of one or moreobjects from the digital image. According to an embodiment consistentwith the present disclosure, object extraction module 220 may beconfigured to first extract images of one or more rigid objects, such asfasteners. The locations of rigid objects may be well predicted based onthe CAT design chart. Object extraction module 220 may be furtherconfigured to grow images of one or more flexible objects, such as hosesthat are connected to fasteners, based on the extracted images of one ormore rigid objects. For example, the image of a hose may be grownbetween two coupling fasteners. Flexible objects may be usually presentin a different orientation or shape compared to those in the CAT designchart. Object extraction module 220 may be yet further configured toextracted images of the one or more flexible objects. The extractedimages may be output by object extraction module 220, and may bereceived as input by object recognition module 230. Object recognitionmodule 230 may be configured to recognize each object based on itsextracted image and a library of standard components. Object recognitionmodule 230 may be further configured to identify one or more features ofeach recognized component.

The identified features of the recognized component may be output byobject recognition module 230 and received as input by fault detectionmodule 240. Fault detection module 240 may be configured to comparethese features with the corresponding standard features of thecorresponding standard component stored in database 215, and identify anassembly fault if at least one of these features does not match thecorresponding standard feature. Fault detection module 240 may befurther configured to diagnose the assembly fault and determine a typeand a location of the fault. Fault detection module 240 may beconfigured to generate an output 250. For example, output 250 may be aninspection report that includes the detected fault and its type andlocation. Output 250 may further include suggestions of a new routing ora connection to clear the fault. Assembly inspection tool 200 may beconfigured to send output 250 to display device 126 for displaying.

FIG. 3 is a flow chart of an exemplary operation process 30 of assemblyinspection system 10, consistent with the disclosed embodiment shown inFIG. 1. Assembly inspection tool 200 may be configured to convert a CADdesign chart of an assembled product 101 to a library of standardcomponents (Step 31). Based on each converted standard component, one ormore standard features may be identified (Step 32). For example, astandard hose component and a standard fastener component may beconverted from the CAD design chart of an assembled engine. Thedimension, color, and orientation features may be identified for astandard hose component, and the length and shape features may beidentified for a standard fastener component.

Assembly inspection tool 200 may be configured to extract an image of anobject using image processing techniques (Step 33). The extraction of anobject may be based on the contour of the object and/or intensitysegmentation of the object. Step 33 may include extracting both rigidobjects and flexible objects, where the flexible objects may be grownbased on the rigid objects. The object extraction process of Step 33will be described in greater detail in FIG. 4. The extracted object inStep 33 may be recognized as a component with which the image has thehighest correlation (Step 34). For example, the extracted image may becompared with each standard component converted from the CAD designchart and a correlation between them may be determined. The extractedobject may be labeled as a component with which the object has thehighest correlation. For example, an extracted object may be recognizedas a hose. The objection recognition process of Step 34 will bedescribed in greater detail in FIG. 5.

For each recognized component in Step 34, assembly inspection tool 200may be configured to identify one or more features of the componentbased on its extracted image (Step 35). Examples of features may includecolor, shape, dimension, and orientation. Assembly inspection tool 200may then be configured to compare these identified features withcorresponding standard features of the corresponding standard component(Step 36) and determine whether the identified features match thecorresponding standard features (Step 37).

If at least one of these identified features does not match thecorresponding standard feature (Step 37: No), assembly inspection tool200 may then be configured to diagnose the fault (Step 381). Based onthe difference between each identified feature and its correspondingstandard feature, the type of the fault may be determined. For example,if the identified orientation of a hose object does not match thestandard orientation of a standard hose component while all the otheridentified features substantially match those corresponding standardfeatures, it may be determined that a misrouting fault occurs. Otherexamples of assembly faults may include missing components, rubbing oftwo components, wrong dimension of the component, etc. A location of thefault may also be determined based on the relative position of therecognized component in the digital image. Consistent with one disclosedembodiment, an inspection report including the detected fault and itstype and location may be generated. The fault may be indicated ondisplay device 126 (Step 382). The fault indication may further includedisplaying suggestions of a new routing or a connection to clear thefault.

If all of those identified features match the corresponding standardfeature (Step 37: Yes) or a fault has been diagnosed and indicated (Step382), process 40 may proceed to determine whether all componentscontained in the digital image have been inspected (Step 39). If thereis still at least one component that remains uninspected (Step 39: No),assembly inspection tool 200 may be configured to extract an image ofthe next object and repeat Steps 33-39. If all components contained inthe image have been inspected (Step 39: Yes), process 40 may beterminated.

FIG. 4 is a flow chart of an exemplary operation process of objectextraction module 220, consistent with Step 33 shown in FIG. 3. Theprocess may include a rigid object extraction stage 41 and a flexibleobject extraction stage 42. As rigid object extraction stage 41 begins,object extraction module 220 may be configured to apply an edgedetection procedure on the digital image of assembled product 101 todetermine a contour of each object (Step 411). Edges of an object may beassociated with places where significant intensity changes occur. Forexample, a Canny edge detection algorithm may be applied and the contourof an object may be found where the color change is dramatic.Additionally, object extraction module 220 may also be configured todetect lines associated with each object via a transform algorithm, suchas, for example, a Hough Transform (Step 412).

Meanwhile, object extraction module 220 may be configured to segment thedigital image into a plurality of image regions (Step 413). Imagesegmentation may be performed in parallel with the edge detection ofStep 411 and line detection of Step 412. Image segmentation may be basedon an intensity map of the digital image. For example, an intensity areathat has a homogenous color may be segmented as one object image. Imagesegmentation may include a noise reduction step, for example, using amean shift method, to reduce high-frequency noises and smooth the image.Image segmentation may further include a histogram transform andseparation step. A histogram (i.e., an intensity map) of the digitalimage may be calculated, and the histogram may typically have aplurality of separate peaks. Intensity thresholds may be determinedbased on the plurality of separate peaks, and the digital image may besegmented based on the determined thresholds.

Object extraction module 220 may then be configured to combine resultsof edge detection (Step 411), line detection (Step 412), and imagesegmentation (Step 413), and obtain an extracted image for each rigidobject (Step 414). The images may be filtered to enhance the imagesignal-to-noise ratio (Step 415). In rigid object extraction stage 41,object extraction module 220 may be configured to repeat Steps 411-415until images of all rigid objects are extracted from the digital image,after which the flexible object extraction stage may begin.

During flexible object extraction stage 42, object extraction module 220may be configured to identify coupling rigid objects such as, forexample, coupling fasteners (Step 421). Object extraction module 220 maybe further configured to grow a flexible object connected between everytwo coupling rigid objects such as, for example, a hose connectedbetween two coupling fasteners (Step 422). The flexible object may begrown using a clustering algorithm, a region growing algorithm, afiltering algorithm, or any combinations of these algorithms. Forexample, growing of a flexible object may start from the boundary of onerigid object, and an image pixel adjacent to the growing frontier may beidentified as a part of the flexible object if the intensity of thepixel is within a predefined range.

Alternatively, in some occasions, one of the coupling rigid componentsmay not be shown in the digital image, and thus, the flexible assemblymay seem to be connected to a terminating rigid component. Objectextraction module 220 may be configured to identify terminating rigidobjects such as, for example, a terminating fastener (Step 423), andgrow a flexible object connected to each terminating rigid object suchas, for example, a hose connected to a terminating fastener (Step 424).

Object extraction module 220 may then be configured to extract images offlexible objects grown in Steps 422 and 424 (Step 425). The images maybe filtered to enhance the image signal-to-noise ratio or exclude imageareas not belonging to the flexible object (Step 426). In flexibleobject extraction stage 41, object extraction module 220 may beconfigured to repeat Steps 421-426 until images of all flexible objectsare extracted from the digital image.

FIG. 5 is a flow chart of an exemplary operation process of objectrecognition module 230, consistent with Step 34 shown in FIG. 3. Objectrecognition module 230 may be configured to receive an image of eachextracted object obtained in Step 33. A de-noising procedure may firstbe applied on the image to remove the noise points (Step 341). Duringthe object recognition process, object recognition module 230 may beconfigured to communicate with database 215 to obtain one standardcomponent at a time, and compare the extracted object with the standardcomponent.

As shown in FIG. 3, a border-fitting between the images of the extractedobjected and a standard component may be performed (Step 342), and aparallelism between the two may be determined (Step 343). Accordingly, aborder-fitting coefficient that indicates the rate of fitting, and aparallelism factor that indicates the rate of parallelism, may bedetermined. Additionally, colors of the two images and shapes of the twoobjects may also be compared (Step 344 and Step 345), and theirrespective similarity rates may be determined.

Based on Steps 342-345, a correlation may be calculated between theextracted object and the standard component (Step 346). For example, thecorrelation may be determined as a weighted average of a border-fittingcoefficient, a parallelism factor, a color similarity rate, and a shapesimilarity rate. A high correlation typically corresponds to a highersimilarity between the extracted object and the standard component.After correlations corresponding to all the standard components indatabase 215 have been determined, a highest correlation may be found(Step 347). The extracted object may be labeled as a component of a typeof the standard component corresponding to the highest correlation (Step348).

INDUSTRIAL APPLICABILITY

The disclosed system and method may be applicable to a businessorganization that involves an assembly inspection process that involvesflexible assemblies. An assembly inspection system 10 may include animaging device 110 and an assembly inspection console 120 having anassembly inspection tool 200. Imaging device 110 may obtain a digitalimage of an assembled product. Assembly inspection tool 200 may detectan assembly fault based on the digital image and a CAD design chart ofthe assembled product.

For example, an assembled product 101 may be inspected. Assembledproduct 101 may be an engine having a hydraulic system. A digital imageof assembled product 101 may be obtained by imaging device 110 and thedigital image may be transmitted to assembly inspection console 120 viaa transmission device 130. Assembly inspection tool 200, stored onassembly inspection console 120, may include a CAD conversion module210, configured to convert a CAD design chart of assembled product 101to a library of standard components that may include, for example, aplurality of hoses and fasteners. CAD conversion module 210 may befurther configured to identify one or more standard features of thesestandard components such as, for example, color, shape, dimension, andorientation. Assembly inspection tool 200 may further include an objectextraction module 220 configured to extract one or more objects from thedigital image obtained by imaging device 110, and an object recognitionmodule 230 configured to recognize the extracted object as a component,such as a hose. In particular, object extraction module 220 may beconfigured to extract both rigid objects and flexible objects, where theflexible objects may be grown based on the rigid objects. Objectrecognition module 230 may be further configured to identify one or morefeatures for each recognized object. Assembly inspection tool 200 mayalso include a fault detection module 240 configured to detect anassembly fault if at least one of the identified features of arecognized object does not match the corresponding standard feature ofthe corresponding standard component. Fault detection module 240 may befurther configured to determine a type and a location of the assemblyfault.

Although the disclosed embodiments are described in association with anassembly inspection process, the disclosed inspection tool andinspection method may be used for the inspection process. The disclosedinspection tool may efficiently and effectively detect defects in aproduct, and ensure that the product substantially conforms to itsdesign chart. For example, the disclosed inspection process may haveimproved accuracy because objects may be extracted from the image andrecognized as a certain component before its features are compared tothose of a standard component for the purpose of fault detection. Inparticular, images of flexible assemblies may be accurately extractedfrom the digital image by growing between/from rigid components, and thefeatures of flexible assemblies may be identified for diagnosis purpose.Therefore, the relative position between a flexible assembly and othercomponents may not affect the inspection result. In addition, differentfrom the automated inspection system disclosed in the '287 publicationwhich only detects the existence of an assembly fault when a patternmismatch occurs, the disclosed inspection system and method may be ableto identify specific components that contain the assembly fault, andfurther identify the type and location of the fault.

It will be apparent to those skilled in the art that variousmodifications and variations can be made in the disclosed system andmethod without departing from the scope of the disclosure. Additionally,other embodiments of the disclosed system and method will be apparent tothose skilled in the art from consideration of the specification. It isintended that the specification and examples be considered as exemplaryonly, with a true scope of the disclosure being indicated by thefollowing claims and their equivalents.

What is claimed is:
 1. A method for assembly inspection, the methodcomprising: obtaining a digital image of an assembled product;extracting, by at least one processor, images of one or more objectsfrom the digital image of the assembled product, the extractingincluding: extracting, from the digital image, images of one or morerigid objects; growing images of one or more flexible objects based onthe extracted images of the one or more rigid objects; and extractingimages of the one or more flexible objects; recognizing each of the oneor more rigid or flexible objects as a component based on its extractedimage and a library of standard components; identifying one or morefeatures of each recognized component; comparing each of the one or moreidentified features with a corresponding standard feature of thecorresponding standard component; and determining an assembly fault ifat least one of the one or more identified features does not match thecorresponding standard feature.
 2. The method of claim 1, whereinextracting images of one or more rigid objects further includes:detecting a contour of each component; segmenting the digital image intoa plurality of intensity areas; and combining each intensity area withthe corresponding contour to obtain an extracted image.
 3. The method ofclaim 1, wherein growing images of one or more flexible objects isimplemented with at least one of clustering, region growing, orfiltering algorithms, or any combination thereof.
 4. The method of claim1, wherein growing images of one or more flexible objects includesgrowing an image of a flexible object between two coupling rigidobjects.
 5. The method of claim 1, wherein growing images of one or moreflexible objects includes growing an image of a flexible object from aterminating rigid object.
 6. The method of claim 1, wherein the libraryof standard components is generated by: converting a design chart of theassembled product to a library of standard components; and identifyingone or more standard features for each standard component.
 7. The methodof claim 1, wherein obtaining the digital image of the assembled productincludes: applying a first optical signal for illuminating the assembledproduct; receiving a second optical signal containing the structureinformation of the assembled product; and converting the second opticalsignal to a digital image, wherein each pixel value of the digital imageis proportional to a signal intensity received at each pixel.
 8. Themethod of claim 7, wherein obtaining the digital image of the assembledproduct further includes: compressing the digital image; transferringthe compressed digital image; and uncompressing the compressed digitalimage.
 9. The method of claim 1, wherein determining an assembly faultfurther includes: diagnosing the assembly fault; determining a type anda location of the assembly fault; and providing an inspection reporthaving the type and the location of the assembly fault.
 10. The methodof claim 1, wherein recognizing each of one or more objects includes:performing a border-fitting comparison between the extracted image witheach standard component in the library of standard components;performing parallelism judgment based a result of the border-fittingcomparison; calculating a correlation between the extracted image andeach standard component; and labeling the extracted image as a componentof a type of the standard component corresponding to a highestcorrelation.
 11. The method of claim 10, wherein the correlation isdetermined based on at least one of a color and a shape of the componentdefined by the extracted image.
 12. The method of claim 1, wherein theone or more features includes at least one of an orientation of thecomponent and a dimension of the component.
 13. A non-transitorycomputer readable storage medium having stored thereon instructionsthat, when executed by a processor associated with an assemblyinspection system, cause the assembly inspection system to perform amethod for assembly inspection, the method comprising: obtaining adigital image of an assembled product; extracting images of one or moreobjects from the digital image of the assembled product, the extractingincluding: extracting, from the digital image, images of one or morerigid objects; growing images of one or more flexible objects based onthe extracted images of the one or more rigid objects; and extractingimages of the one or more flexible objects based on the grown images ofthe one or more flexible objects; recognizing each of the one or morerigid or flexible objects as a component based on its extracted imageand a library of standard components; identifying one or more featuresof each recognized component; comparing each of one or more identifiedfeatures with a corresponding standard feature of the correspondingstandard component; and determining an assembly fault if at least one ofthe one or more identified features does not match the correspondingstandard feature.
 14. The computer readable medium of claim 13, whereinthe library of standard components is generated by: converting a designchart of the assembled product to a library of standard components; andidentifying one or more standard features for each standard component.15. The computer readable medium of claim 13, wherein determining anassembly fault includes: diagnosing the assembly fault; determining atype and a location of the assembly fault; and providing an inspectionreport having the type and the location of the fault.
 16. A system forassembly inspection, comprising: an imaging device configured to obtaina digital image of an assembled product; a storage device configured tostore an assembly inspection tool, a library of standard components, andone or more standard features of each standard component; and aprocessor configured to execute the assembly inspection tool to:extract, from the digital image, images of one or more rigid objectsfrom the digital image of the assembled product grow images of one ormore flexible objects based on the extracted images of the one or morerigid objects; recognize each rigid or flexible object as a componentbased on its image and a library of standard components; identify one ormore features of each recognized component; compare each identifiedfeature with the corresponding standard feature of the correspondingstandard component; determine an assembly fault if at least one of theone or more identified features does not match the correspondingstandard feature; and determine at least one of a type or a location ofthe assembly fault.
 17. The system of claim 16, wherein the imagingdevice includes: an optical emitter configured to applying a firstoptical signal for illuminating the assembled product; an opticaldetector configured to receive a second optical signal containing thestructure information of the assembled product; and a converterconfigured to convert the second optical signal to a digital image,wherein each pixel value of the digital image is proportional to asignal intensity received at each pixel.
 18. The system of claim 16,further including a display device configured to display an inspectionreport having the type and the location of the assembly fault.